Client-based objectifying of text pages

ABSTRACT

The invention relates to providing embedded meta-data into HTML pages by means of a plug-in residing on a user computer. The plug-in analyzes the unstructured data of a hypertext page, understands the meaning behind the data, associates meta-data with some of the unstructured data and stores this meta-data back into the original hypertext page. The plug-in stores meta-data in a location that is hidden from the user&#39;s view so that it is unobtrusive but easily retrievable.

BACKGROUND OF THE INVENTION

[0001] This application claims priority to Provisional Application No.60/240,521 filed Oct. 12, 2000, hereby incorporated by reference for allpurposes. In addition, this application is being concurrently filed withU.S. Serial Number______ (Atty. Docket No. 17900-001710US) commonlyassigned and hereby incorporated by reference for all purposes.

[0002] The World Wide Web is an integrated network of sites, each isspecialized in a different subject or theme. Despite the differences,most sites can be categorized into groups based upon their content. Somesites specialize in news, some in sports, others in book e-tailing andstill others in investment.

[0003] Navigation between the various sites is limited to clicking onhyperlinks. Hyperlinks in one site point to pages on another thusallowing the browser to move among the sites. This method of navigationis powerful yet it also limits the user's browsing experience. Oneonline bookseller will not point to another since it does not want tomove potential buyers off its site. The offered hyperlinks will belimited only to websites that the site has relations with. The user thatbrowses for a book, however, does want to be able to compare prices onmultiple competitive online bookstores.

[0004] Hypertext pages viewed over the World Wide Web are free-form textdocuments. They are not self descriptive in the way that they do notcontain the meaning of the displayed text. It is up to the reader of thesite to interpret the text into meaningful information. This all workswell for a human reader. However, a machine reading this text (data) islacking the necessary descriptors (meta-data) to understand what isbeing displayed.

[0005] Therefore, it would be advantageous to provide a method ofanalyzing the unstructured data of hypertext pages, understanding themeta-data behind it and embedding this meta-data into the originalhypertext page at the client's machine. The meta-data may be stored,hidden from the user's view, so that it is unobtrusive. However,applications that know where to look for this meta-data can easilyaccess and utilize it.

SUMMARY OF THE INVENTION

[0006] The invention relates to embedding meta-data into HTML pages at auser computer. In one embodiment, a computer-implemented method foradding meta-data to textual content on a hypertext page is described. Aplug-in residing on a web browser at a user computer detects theoccurrence of a first hypertext page. The plug-in analyzes the URL ofthe first hypertext page. Soon thereafter, the plug-in associates atemplate with the first hypertext page based in part on said URL. If theplug-in cannot locate a template locally, it may contact a well-knownserver so as to request a template from the server, which is coupled toa repository of templates.

[0007] The plug-in then scans the content of the first hypertext pagefor recognized objects using the template. In response to locating anyrecognized objects, the plug-in dynamically embeds meta-data of therecognized object into the first hypertext page. The first hypertextpage with the meta-data is then stored on the user computer or displayedto the user.

[0008] Reference to the remaining portions of the specification,including the drawings and claims, will realize other features andadvantages of the present invention. Further features and advantages ofthe present invention, as well as the structure and operation of variousembodiments of the present invention, are described in detail below withrespect to the accompanying drawings. In the drawings, like referencenumbers indicate identical or functionally similar elements.

BRIEF DESCRIPTION OF THE DRAWINGS

[0009]FIG. 1 is a prior art corporate network;

[0010]FIG. 2 is one embodiment of a network embodying the presentinvention;

[0011]FIG. 3 is a one embodiment of a network embodying the presentinvention by providing a plug-in at the client machine;

[0012]FIG. 3A is a flow chart of the steps for the embodiment of FIG. 3;

[0013]FIG. 4 is a system drawing for providing a plug-in at a clientmachine;

[0014]FIG. 5 is a prior art hypertext page; and

[0015]FIG. 6 is a hypertext page having a content menu using theembedded meta-data of the present invention.

DESCRIPTION OF THE SPECIFIC EMBODIMENTS

[0016] The invention provides exemplary systems and methods forembedding meta-data into HTML pages by means of a plug-in associatedwith a web browser and thereafter displaying the HTML pages on a usercomputer. The plug-in analyzes the unstructured data of a hypertextpage, understands the meaning behind the data, associates meta-data withsome of the unstructured data and stores this meta-data back into theoriginal hypertext page. The invention potentially stores meta-data in alocation that is hidden from the user's view so that it is unobtrusivebut easily retrievable.

[0017] There are numerous configurations for implementing the presentinvention. In the illustrated embodiment of FIG. 1, the invention isimplemented and described using a typical corporate network. Clientcomputers 100 are arranged in intranet subnet 125 along with internalservers 105. The intranet subnet is coupled to Internet 120 through agateway or bottleneck 110. In the illustrated example, gateway 110 is aproxy. Internet 120 has external servers 115, which is where content mayreside.

[0018]FIG. 2 illustrates one embodiment of client based embedding ofdata for the network shown in FIG. 1. The illustrated example in FIG. 2extends the client machine so as to have access to extended web content.Client machine 200 has an extension 205 installed thereon, which allowscontent coming from both internal servers 215 and external servers 225to be extended. Although the network illustrated in FIG. 2 does notrequire modification of the network configuration to embed data into atext page, it does require an installation or plug-in on each client todo so. As will be described hereinafter, client machine 200 has embodiedthereon an extension to embed data into a text page. In one embodiment,this extension is a web browser having a plug-in that performs the stepsof the method described hereinafter.

Embedding Data at a Client Machine

[0019] In one embodiment of the present invention, a plug-in, filter,tool bar or event handler is provided at the client machine to embeddata into a text page. More particularly, as shown in FIGS. 3 and 4, aplug-in is provided that may embed meta-data into a web page at a clientmachine. Referring now to FIGS. 3 and 3A, client machine 300 comprises aweb browser 305 and a plug-in 310 embodied thereon. Client machine 300is coupled to a server 315, which in the illustrated embodiment is shownas a TopTier server. Server 315 has a database of templates coupledthereto, which is not illustrated in FIG. 3.

[0020] Referring now to FIG. 3A with reference to FIG. 3, one embodimentof the present invention will now be described in detail. A usergenerates an HTTP request by entering a URL into a web browser 305 atclient machine 300. The HTTP request is submitted to a second location,which in the example is likely to be a third party website. In thecontext of the present invention, either the entering of an HTTP requestor the receipt of the corresponding document may be referred to as adocument load event. Web browser plug-in 310 detects the HTTP request ordocument load event (step 321). Subsequently, the HTTP request isintercepted at client machine 300. The resource identifier, which in theillustrated example is the URL of the web page requested at the usercomputer or client machine 300, is extracted from the request by theplug-in and stored for future use (step 322). If a template is notavailable locally, the URL is then forwarded (step 323) from clientmachine 300 to a server 315 for purposes of locating a template. If atemplate is available locally, for example in computer readable memoryor in a database coupled to client machine 300, the template isretrieved and there is no need to send the URL to server 315. Anylocated template is associated with the URL of the HTTP request.

[0021] In response to the receipt of the URL, server 315 queries itsdatabase of templates, to identify any relevant template for the targetresource, i.e. the forwarded URL in step 323 (step 324). If a match isfound, server 315 returns the template to the plug-in 310. The clientmachine, through web browser 305 and plug-in 310, analyzes the document.In one embodiment, using the template, the plug-in scans the textualcontent to search for recognized objects (step 326). In anotherembodiment, the plug-in may use the template to locate any known patternor structure of existing hyperlinks (step 330). In yet anotherembodiment, the plug-in uses the template to locate any recognizedobjects based on their relative location on the page (step 331).

[0022] To facilitate its operation, the plug-in of the present inventionmay parse the HTTP response to build a Document Object Model (DOM)document. DOM is a platform and language neutral interface that allowsprograms and scripts to dynamically access and update the content andstructure of HTML documents. As such, all document content, includingall elements and their attributes, can be added, removed or changed.

[0023] Client machine 300, using plug-in 310 embodied on web browser305, then analyzes the DOM document based on any retrieved template(s),and if recognized objects are found using the template (step 332),thereafter embeds meta-data into the DOM document in the form of new DOMnodes. Embedded data may be meta-data, a script or a link to name a few.The DOM is then serialized again as plain HTML text and returned to theweb browser (step 333). The web browser is unaffected by the fact thatthe HTML content has been modified.

[0024] The process of analyzing the existing DOM of an HTML page is nowdescribed. In one aspect of the invention, the textual content of theHTML page is scanned for known words or phrases. This scanning phase maybe referred to as the dictionary analysis. For example, the word “UnitedStates” is identified as a location and a country. Once identified,plug-in 310 subsequently inserts this meta-data into the HTML stream.Different dictionaries may be used for different sites. For example, afirst dictionary may always be used for a sports site, while a seconddictionary may be used for a news site. In another aspect of theinvention, the known structure of existing hyperlinks and other elementsare analyzed and extended. For example, http://www.mybookstore.com/book?isbn=1234567890 points to a book whose ISBN is 1234567890. Accordingly,links are analyzed differently for each domain. In yet another aspect ofthe invention, data is recognized by its location on the page. Forexample, a particular web page may always use big text at the top of apage to identify a book title. A template of the present invention maythen be used to scan this particular web page and extract the title ofthe book. Accordingly, there are different templates that recognize textby location for each recognized domain.

[0025]FIG. 4 illustrates one example of a system embodying the presentinvention. In the illustrated example, client machine 400 comprises aweb browser 405 with a plug-in 410 embodied thereon. In addition, clientmachine 400 may also have a word processing program, a spreadsheet ordocument management system with an associated filter embodied thereon toeffectuate the steps of the present invention. Client machine 400initiates a request for a document from a first location 425, which inthe illustrated example is an HTTP request to a first location 425. Inthe illustrated embodiment, first location 425 is a third party websiteon the Internet. However, one skilled in the art can appreciate that therequest for a document may be a request for a document from a wordprocessing program, a spreadsheet, a document management system or thelike without departing from the intended scope of the invention. Inaddition, first location 425 may be an intranet site.

[0026] Continuing with FIG. 4, the document is returned from the firstlocation to web browser 405. Client machine 400 utilizes the appropriatesoftware package to display the document to the user. In the illustratedembodiment, web browser 405 detects the presence of HTML document 430and sends a document load event to plug-in 410. The plug-in parses thedocument to locate the unique identifier that is characteristic of thedocument. In the illustrated example, the unique identifier is a URLidentifying the HTML document.

[0027] Plug-in 410 then requests an associated template for the documentby passing the unique identifier to a second location 415. In theillustrated example, second location 415 is a server having a databaseof templates 420 coupled thereto. The unique identifier, or URL of theHTML document, is used to instruct the server 415 to retrieve theassociated template from database 420. However, one skilled in the artcan appreciate that second location may be a database or computerreadable memory coupled to client machine 400. Second location 415returns the template to client machine, and more particularly in theillustrated example, plug-in 410. If more information is needed byclient 400, it is requested from second location 415.

[0028] As illustrated in FIG. 4, plug-in 410 uses the template toanalyze HTML document 430. Specifically, plug-in searches the documentfor recognized objects using the template. If a recognized object isfound, plug-in 410 associates data with the recognized element andembeds it into the document. In the illustrated embodiment, plug-in 410associates meta-data with the recognized objects and embeds themeta-data into the HTML text stream. However, one skilled in the art canappreciate that scripts, links or the like may be embedded into adocument without departing from the intended scope of the invention.

Embedding Data Examples

[0029]FIG. 5 shows an example of a prior art hypertext page 601consisting of some text and a hyperlink 602. The following illustratessource code that may be used to render that page:

[0030] <HTML>

[0031] <HEAD>

[0032] </HEAD>

[0033] <BODY>

[0034] <A HREF=“http://xyz.somewhere.com”>Willie Brown</A>has beenre-elected as the mayor of the city and county of San Francisco.

[0035] </BODY>

[0036] </HTML>

[0037] For purposes of the example, assume that the analysis process forthe HTML page has recognized two objects on the page: Willie Brown andSan Francisco. Willie Brown is recognized as a name, Willie as a firstname and Brown as a last name. Continuing, San Francisco is recognizedas a location. The meta-data of these objects will be embedded into theweb page, effectively altering the source code to something like:

[0038] <HTML>

[0039] <HEAD>

[0040] </HEAD>

[0041] <BODY>

[0042] <AHREF=“http://xyz.somewhere.com”META=“<PERSON><FIRST>Willie</FIRST>

[0043] <LAST>Brown</LAST></PERSON>”>Willie Brown</A>has been re-electedas the mayor of the city and county of <SPAN META=“<LOCATION><CITY>SanFrancisco >/CITY><STATE>CA</STATE></LOCATION>”>San Francisco</SPAN+22.

[0044] </BODY>

[0045] </HTML>

[0046] The example above shows one case where an attribute has beenadded to an existing tag, i.e. the META attribute of the A tag. Inaddition, the example illustrates an attribute in which a new tag hasbeen added where there had been none before, i.e. the SPAN tag. Neitherchange alters the rendering of the web page. The web browser ignores theadditional tags when drawing the page. The user is unaware of thechanges to the page. Also, note that since the meta-data is stored inXML format, it is quite easily extensible. As such, it may therefore bedesirable to include the country as well as the city and state in thelocation object in the above example.

[0047] A designer of the analysis tool may program one aspect of theinvention so as to cause changes in the rendering of the HTML page. Forexample, an analyzer may automatically add HRNP links where there werenone, and alter existing hyperlinks to HRNP links where applicable. HRNPlinks are described in U.S. Pat. No. 5,848,424, which is herebyincorporated by reference in its entirety for all purposes. In summary,HRNP links provide a method for meta-data based hyperlink navigation.One possible implementation may produce the following code:

[0048] <HEAD>

[0049] </HEAD>

[0050] <BODY>

[0051] <A HREF=“hrnp://xyz.myserver.com/person/Willie,+Brown”>WillieBrown</A>has been re-elected as the mayor of the city and county of<AHREF=“hrnp://xyz.myserver.com/city/SF, +CA>”>San Francisco</A>.

[0052] </BODY>

[0053] </HTML>

[0054] Since HRNP links have a rigid structure one must follow, themeta-data is not stored in XML style but rather as part of the HRNP HREFstring.

[0055]FIG. 6 illustrates one example of a navigation option usingmeta-data embedded into an HTML page. In the illustrated example, aright click on link 602 produces context menu 603. The navigationoptions provided in context menu 603 result from and are directlyrelated to the embedded meta-data. In the illustrated example, atemplate has determined that the term “Raze” is a book. In response,corresponding meta-data is embedded into the hypertext page to indicatesuch. The navigation options in context menu 603, e.g. N&B.com,Nozama.com and Mybookstore.com, all relate to the meta-data thatindicates Raze is a book. Such association allows for infinitenavigation options.

[0056] Although the invention is described with reference to specificembodiments thereof, the embodiments are merely illustrative, and notlimiting, of the invention, the scope of which is to be determinedsolely by the appended claims.

What is claimed is:
 1. A computer implemented method for embedding datain a text page at a client machine, the method comprising: interceptingthe request for the resource; extracting a resource identifier from therequest and storing said resource identifier; forwarding the request forsaid resource from said client machine to a location having theresource; receiving the resource and thereafter parsing the resourcebased at least partially on the identifier so as to search the resourceand identify one or more recognized elements in the resource; andembedding data into the resource based on the one or more recognizedelements.
 2. The computer implemented method of claim 1 wherein saidmethod is performed by a module operating within a web browser.
 3. Thecomputer implemented method of claim 1 wherein said embedded datacomprises meta-data.
 4. The computer implemented method of claim 1wherein said embedded data comprises a script.
 5. The computerimplemented method of claim 1 wherein said embedded data comprises alink.
 6. The computer implemented method of claim 1 wherein said requestfor a resource is an HTTP request for an HTML document.
 7. The computerimplemented method of claim 1 wherein said resource identifier is a URL.8. The computer implemented method of claim 1 wherein said request for aresource is a request for a document from a document managementdatabase.
 9. The computer implemented method of claim I furthercomprising the step of storing detected element data in a log filecoupled to said client machine, said detected element data representingat least said one or more recognized elements.
 10. The computerimplemented method of claim 1 wherein said search and identify said oneor more recognized elements further comprises a dictionary search,wherein said dictionary search comprises locating recognized words orphrases in said resource from computer memory coupled to said clientmachine.
 11. The computer implemented method of claim 1 wherein saidsearch and identify said one or more recognized elements furthercomprises a pattern search, said pattern search comprising locatingknown patterns in said resource.
 12. The computer implemented method ofclaim 11 wherein said pattern search is a search for links.
 13. Thecomputer implemented method of claim 1 wherein said search and identifysaid one or more recognized elements further comprises a locationsearch, said location search comprising locating text based on theposition of said text in said resource.
 14. The computer implementedmethod of claim 1 wherein said storing a resource identifier comprisesstoring said resource identifier in computer readable memory coupled tosaid client machine.
 15. The computer implemented method of claim 1wherein said parsing of said resource is assisted by a template foridentifying recognized elements, said template retrieved from a databasecoupled to said client machine.
 16. A computer implemented method foradding meta-data to a hypertext page at a client machine, the methodcomprising: intercepting an HTTP request for a resource; extracting aURL from said HTTP request and storing the URL in computer readablememory coupled to said client machine, the URL identifying the requestedresource; forwarding the HTTP request to a network having the requestedresource; receiving the requested resource at the client machine in theform of an HTTP response; extracting content out of the HTTP response;locating a template that corresponds to the requested resource; andembedding meta-data into the content using the template.
 17. Thecomputer implemented method of claim 16, wherein said client machinecomprises a web browser and a module operating within said web browser.18. The computer implemented method of claim 16, wherein said step ofembedding meta-data further comprises: building a document object model(DOM) using an HTML text stream from said HTTP response; addingmeta-data into the DOM by creating new DOM elements and attributes; andserializing the DOM with the added meta-data into the HTML text stream.19. The computer implemented method of claim 16 wherein said resource isan HTML stream.
 20. The computer implemented method of claim 16 whereinsaid network is an intranet network.
 21. The computer implemented methodof claim 16 wherein said network is the Internet.
 22. The computerimplemented method of claim 16 wherein said network is a documentmanagement system.
 23. The computer implemented method of claim 16wherein said template is obtained from a template database, saidtemplate is selected based on said URL.
 24. The computer implementedmethod of claim 23 wherein said template database is coupled to alocation having up-to-date templates, wherein said template databasereceives said up-to-date templates from said location.
 25. The computerimplemented method of claim 24 wherein said template database is coupledto a location having said up-to-date templates, and receives saidup-to-date templates using the Internet.
 26. The computer implementedmethod of claim 16 wherein said template assists a dictionary search,wherein said dictionary search comprises recognizing elements in saidresource by a word or a phrase.
 27. The computer implemented method ofclaim 16 wherein said template assists a pattern search, said patternsearch comprising locating known patterns in said resource.
 28. Thecomputer implemented method of claim 27 wherein said pattern search is asearch for links.
 29. The computer implemented method of claim 16wherein said template assists a location search, wherein said locationsearch comprises recognizing elements in said resource based on thelocation of said element in said resource.
 30. A computer implementedmethod for adding a script to a hypertext page at said client machine,comprising: intercepting a resource request at a client machine, saidresource request identifying a resource; extracting a resource requestidentifier from the resource request and storing the resource requestidentifier in computer readable memory, the resource request identifierassociated with the resource; forwarding the resource request to anetwork and thereafter locating the resource; locating a template thatcorresponds to the resource; and embedding at least one script into saidresponse.
 31. The computer implemented method of claim 30, wherein saidstep of embedding at least one script further comprises: building adocument object model (DOM) out of an HTML text stream from saidresponse; adding at least one script into the DOM by creating new DOMnodes, elements or attributes; and serializing the DOM with the at leastone added script back into the HTML text stream.
 32. The method of claim30 wherein said network is the Internet.
 33. The method of claim 30wherein said network is an intranet.
 34. The method of claim 30 whereinsaid network is a document management database.
 35. The method of claim30 wherein said document request identifier is a URL.
 36. The method ofclaim 30 wherein said resource is generated from spreadsheet software,presentation software and/or word processing software.
 37. A system foradding data to a text page at a client machine, said system comprising aclient machine having computer readable memory and a database coupledthereto, said client machine having a filter for receiving a request fora resource, extracting and storing a resource identifier from saidrequest, forwarding said request for said resource from said clientmachine to a location having said resource, receiving said resource andthereafter parsing said resource based on said identifier so as tosearch and identify one or more recognized elements in said resource,and embedding data into said resource based on said one or morerecognized elements.
 38. A computer implemented method for embeddingdata into a resource at a first location using a template received froma second location coupled to said first location, said first locationhaving a web browser and a module operating within said web browser,said method comprising: receiving a hypertext page at said firstlocation; detecting the occurrence of said hypertext page by saidmodule; identifying the URL of said resource; associating a templatewith said URL; analyzing said hypertext page using said template,wherein said analyzing step identifies one or more recognized elementsin said hypertext page; and associating data with said one or morerecognized elements and thereafter embedding said data into saidhypertext page.
 39. The computer implemented method of claim 38, whereinsaid first location is a user computer.
 40. The computer implementedmethod of claim 38, wherein said second location is a server having aplurality of templates stored in computer readable memory.
 41. Acomputer implemented method for embedding meta-data in a hypertext pageat a user computer comprising the following steps performed by a moduleoperating within a web browser resident on said user computer, said usercomputer coupled to a first location and a second location, said methodcomprising the steps of: receiving said hypertext page at said usercomputer from said first location; analyzing unstructured data of saidhypertext page, wherein said analyzing step detects a unique identifierthat is characteristic of said hypertext page; receiving a template fromsaid second location, said template is retrieved based on said uniqueidentifier; and using said template, associating meta-data with at leasta portion of said unstructured data and thereafter embedding saidmeta-data in said hypertext page.
 42. The computer implemented method ofclaim 41 wherein said first location is a website and said secondlocation is a server having a plurality of templates stored in computerreadable memory.
 43. The computer implemented method of claim 41 whereinsaid module is a plug-in module of a world wide web browser.
 44. Thecomputer implemented method of claim 41 further comprising: transmittingsaid resource identifier to said second location; locating said templateusing said resource identifier at said second location; and transmittingsaid template from said second location to said client machine.
 45. Acomputer implemented method of embedding meta-data in a hypertext pageon a user computer comprising: analyzing unstructured data of saidhypertext page using a template downloaded from a first location to saiduser computer; associating meta-data with a portion of said unstructureddata of said hypertext page; and embedding said associated meta-datainto said hypertext page.
 46. The computer implemented method of claim45 further comprising: loading said hypertext page, checking a domainname of said hypertext page and matching a template with said hypertextpage.
 47. The computer implemented method of claim 45, wherein saidanalyzing step further comprises scanning textual content of saidhypertext page.
 48. The computer implemented method of claim 45, whereinsaid step of analyzing further comprises analyzing structure of anexisting hyperlink or scanning for a known pattern on said hypertextpage and thereafter embedding a hyperrelational link coupled toidentified element.
 49. The computer implemented method of claim 45,wherein said step of analyzing further comprises recognizing a portionof said unstructured data on said hypertext page based on the locationof said portion.
 50. The computer implemented method of claim 45,wherein said step of adding further comprises dynamically embedding saidmeta-data associated with a portion of said unstructured data into saidhypertext page.
 51. A computer system for embedding meta-data into ahypertext-page and storing said hypertext page on a user computercomprising: a web browser residing on said user computer for receivingweb pages having a URL; a plug-in module associated with said webbrowser, said plug-in module detects the occurrence of a web page loadedinto said web browser, receives a template for analyzing content of saidweb page to produce recognized content and embeds meta-data associatedwith said recognized content; a server for receiving said URL andreturning a template associated with said URL to said plug-in module;and a database of templates, said database coupled to said server.
 52. Acomputer implemented method for providing navigation options at a clientmachine, said method comprising: receiving a request for a resource atsaid client machine; extracting and storing a resource identifier fromsaid request at said client machine; forwarding said request for saidresource from said client machine to a location having said resource;receiving said resource at said client machine and thereafter parsingsaid resource based on said identifier so as to search said resource andidentify one or more recognized elements in said resource; embeddingdata into said resource at said client machine based on said one or morerecognized elements; and recognizing said data at said client machineand thereafter providing a navigation option at said client machinebased on said data.
 53. The computer implemented method of claim 52wherein said data comprises meta-data and a navigation script, whereinsaid meta-data and said script in combination provide navigationoptions.
 54. The computer implemented method of claim 52 wherein saidnavigation option comprises a single click hypertext link.
 55. Thecomputer implemented method of claim 52 wherein said navigation optioncomprises an HRNP link, wherein said HRNP link can be clicked at a firstlocation and dragged to a second location.
 56. The computer implementedmethod of claim 52 wherein said navigation option comprises a pop-upmenu having a list of links.
 57. The computer implemented method ofclaim 52 wherein said navigation option comprises a list of icons.